home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2006 May / PCWMAY06.iso / Software / Freeware / First Page 2006 3.00 / fp2006-final-3.00-setup.exe / {app} / Iscripts / Forms Misc / opload-img-preview.izs < prev    next >
Text File  |  2005-09-28  |  5KB  |  178 lines

  1. <!NOWIZARD>
  2.  
  3. <!TITLE>Image Upload Preview
  4. <!/TITLE>
  5.  
  6. <!DESCRIPTION>This script is intended for forms where the user needs to upload an image to a Web site. The image is displayed on the page for previewing before uploading. The display will be resized if needed so as not to break the page layout. Valid file types are set in the script; others will be disallowed. Works only in Internet Explorer but degrades gracefully. <!/DESCRIPTION> 
  7.  
  8. <!CATEGORY>Forms<!/CATEGORY>
  9.  
  10. <!SCRIPT>
  11. <!-- START OF SCRIPT -->
  12.  
  13.  
  14. <!-- HOW TO INSTALL IMAGE UPLOAD PREVIEW:
  15.  
  16.   1.  Copy code into the HEAD section of document
  17.   2.  Put last coding into the BODY section of document  -->
  18.  
  19. <!-- STEP ONE: Add code into HEAD section of document  -->
  20.  
  21. <HEAD>
  22.  
  23. <script type="text/javascript">
  24. <!-- Begin
  25. /* 
  26. Created by: Abraham Joffe :: http://www.abrahamjoffe.com.au/ */
  27.  
  28. /***** CUSTOMIZE THESE VARIABLES *****/
  29.  
  30.   // width to resize large images to
  31. var maxWidth=100;
  32.   // height to resize large images to
  33. var maxHeight=100;
  34.   // valid file types
  35. var fileTypes=["bmp","gif","png","jpg","jpeg"];
  36.   // the id of the preview image tag
  37. var outImage="previewField";
  38.   // what to display when the image is not valid
  39. var defaultPic="spacer.gif";
  40.  
  41. /***** DO NOT EDIT BELOW *****/
  42.  
  43. function preview(what){
  44.   var source=what.value;
  45.   var ext=source.substring(source.lastIndexOf(".")+1,source.length).toLowerCase();
  46.   for (var i=0; i<fileTypes.length; i++) if (fileTypes[i]==ext) break;
  47.   globalPic=new Image();
  48.   if (i<fileTypes.length) globalPic.src=source;
  49.   else {
  50.     globalPic.src=defaultPic;
  51.     alert("THAT IS NOT A VALID IMAGE\nPlease load an image with an extention of one of the following:\n\n"+fileTypes.join(", "));
  52.   }
  53.   setTimeout("applyChanges()",200);
  54. }
  55. var globalPic;
  56. function applyChanges(){
  57.   var field=document.getElementById(outImage);
  58.   var x=parseInt(globalPic.width);
  59.   var y=parseInt(globalPic.height);
  60.   if (x>maxWidth) {
  61.     y*=maxWidth/x;
  62.     x=maxWidth;
  63.   }
  64.   if (y>maxHeight) {
  65.     x*=maxHeight/y;
  66.     y=maxHeight;
  67.   }
  68.   field.style.display=(x<1 || y<1)?"none":"";
  69.   field.src=globalPic.src;
  70.   field.width=x;
  71.   field.height=y;
  72. }
  73. // End -->
  74. </script>
  75. </HEAD>
  76.  
  77. <!-- STEP TWO: Add code into BODY section of document  -->
  78.  
  79. <BODY>
  80.  
  81. <div align="center" style="line-height: 1.9em;">
  82. Test it by locating a valid file on your hard drive:
  83. <br>
  84. <input type="file" id="picField" onchange="preview(this)">
  85. <br>
  86. <img alt="Graphic will preview here" id="previewField" src="spacer.gif">
  87. <br> <div style="font-size: 7pt;">
  88. Script submitted by: <a href="http://www.abrahamjoffe.com.au/">Sydney Wedding Video / DVD</a></div>
  89. </div>
  90.  
  91.  
  92. <!-- END OF SCRIPT -->
  93. <!/SCRIPT>
  94.  
  95. <!PREVIEW>
  96. <!-- START OF SCRIPT -->
  97.  
  98. <!-- HOW TO INSTALL IMAGE UPLOAD PREVIEW:
  99.  
  100.   1.  Copy code into the HEAD section of document
  101.   2.  Put last coding into the BODY section of document  -->
  102.  
  103. <!-- STEP ONE: Add code into HEAD section of document  -->
  104.  
  105. <HEAD>
  106.  
  107. <script type="text/javascript">
  108. <!-- Begin
  109. /* 
  110. Created by: Abraham Joffe :: http://www.abrahamjoffe.com.au/ */
  111.  
  112. /***** CUSTOMIZE THESE VARIABLES *****/
  113.  
  114.   // width to resize large images to
  115. var maxWidth=100;
  116.   // height to resize large images to
  117. var maxHeight=100;
  118.   // valid file types
  119. var fileTypes=["bmp","gif","png","jpg","jpeg"];
  120.   // the id of the preview image tag
  121. var outImage="previewField";
  122.   // what to display when the image is not valid
  123. var defaultPic="spacer.gif";
  124.  
  125. /***** DO NOT EDIT BELOW *****/
  126.  
  127. function preview(what){
  128.   var source=what.value;
  129.   var ext=source.substring(source.lastIndexOf(".")+1,source.length).toLowerCase();
  130.   for (var i=0; i<fileTypes.length; i++) if (fileTypes[i]==ext) break;
  131.   globalPic=new Image();
  132.   if (i<fileTypes.length) globalPic.src=source;
  133.   else {
  134.     globalPic.src=defaultPic;
  135.     alert("THAT IS NOT A VALID IMAGE\nPlease load an image with an extention of one of the following:\n\n"+fileTypes.join(", "));
  136.   }
  137.   setTimeout("applyChanges()",200);
  138. }
  139. var globalPic;
  140. function applyChanges(){
  141.   var field=document.getElementById(outImage);
  142.   var x=parseInt(globalPic.width);
  143.   var y=parseInt(globalPic.height);
  144.   if (x>maxWidth) {
  145.     y*=maxWidth/x;
  146.     x=maxWidth;
  147.   }
  148.   if (y>maxHeight) {
  149.     x*=maxHeight/y;
  150.     y=maxHeight;
  151.   }
  152.   field.style.display=(x<1 || y<1)?"none":"";
  153.   field.src=globalPic.src;
  154.   field.width=x;
  155.   field.height=y;
  156. }
  157. // End -->
  158. </script>
  159. </HEAD>
  160.  
  161. <!-- STEP TWO: Add code into BODY section of document  -->
  162.  
  163. <BODY>
  164.  
  165. <div align="center" style="line-height: 1.9em;">
  166. Test it by locating a valid file on your hard drive:
  167. <br>
  168. <input type="file" id="picField" onchange="preview(this)">
  169. <br>
  170. <img alt="Graphic will preview here" id="previewField" src="spacer.gif">
  171. <br> <div style="font-size: 7pt;">
  172. Script submitted by: <a href="http://www.abrahamjoffe.com.au/">Sydney Wedding Video / DVD</a></div>
  173. </div>
  174. <!-- END OF SCRIPT -->
  175. <!/PREVIEW>
  176.  
  177. <!RELATED>NONE<!/RELATED>
  178.